home *** CD-ROM | disk | FTP | other *** search
- /*
- File: MediaHandlers.h
-
- Copyright: © 1991-1994 by Apple Computer, Inc., all rights reserved.
-
- */
-
- #ifndef __MEDIAHANDLERS__
- #define __MEDIAHANDLERS__
-
- #include <Movies.h>
- /* #include <Quickdraw.h> */
- /* #include <Types.h> */
- /* #include <ConditionalMacros.h> */
- /* #include <MixedMode.h> */
- /* #include <Traps.h> */
- /* #include <QuickdrawText.h> */
- /* #include <IntlResources.h> */
- /* #include <Aliases.h> */
- /* #include <AppleTalk.h> */
- /* #include <OSUtils.h> */
- /* #include <Files.h> */
- /* #include <SegLoad.h> */
- /* #include <Events.h> */
- /* #include <ToolUtils.h> */
- /* #include <TextUtils.h> */
- /* #include <Script.h> */
- /* #include <FixMath.h> */
- /* #include <Menus.h> */
- /* #include <Components.h> */
- /* #include <ImageCompression.h> */
- /* #include <QDOffscreen.h> */
- /* #include <StandardFile.h> */
- /* #include <Dialogs.h> */
- /* #include <Windows.h> */
- /* #include <Controls.h> */
- /* #include <TextEdit.h> */
- enum {
- handlerHasSpatial = 1 << 0,
- handlerCanClip = 1 << 1,
- handlerCanMatte = 1 << 2,
- handlerCanTransferMode = 1 << 3,
- handlerNeedsBuffer = 1 << 4,
- handlerNoIdle = 1 << 5,
- handlerNoScheduler = 1 << 6,
- handlerWantsTime = 1 << 7,
- handlerCGrafPortOnly = 1 << 8
- };
-
- enum {
- mMustDraw = 1 << 3,
- mAtEnd = 1 << 4,
- mPreflightDraw = 1 << 5
- };
-
- enum {
- mDidDraw = 1 << 0,
- mNeedsToDraw = 1 << 2,
- mPartialDraw = 1 << 4
- };
-
- enum {
- forceUpdateRedraw = 1 << 0,
- forceUpdateNewBuffer = 1 << 1
- };
-
- #if defined(powerc) || defined (__powerc)
- #pragma options align=mac68k
- #endif
- struct GetMovieCompleteParams {
- short version;
- Movie theMovie;
- Track theTrack;
- Media theMedia;
- TimeScale movieScale;
- TimeScale mediaScale;
- TimeValue movieDuration;
- TimeValue trackDuration;
- TimeValue mediaDuration;
- Fixed effectiveRate;
- TimeBase timeBase;
- short volume;
- Fixed width;
- Fixed height;
- MatrixRecord trackMovieMatrix;
- CGrafPtr moviePort;
- GDHandle movieGD;
- PixMapHandle trackMatte;
- };
- #if defined(powerc) || defined(__powerc)
- #pragma options align=reset
- #endif
-
- typedef struct GetMovieCompleteParams GetMovieCompleteParams;
-
- enum {
- kMediaInitializeSelect = 0x501,
- kMediaSetHandlerCapabilitiesSelect = 0x502,
- kMediaIdleSelect = 0x503,
- kMediaGetMediaInfoSelect = 0x504,
- kMediaPutMediaInfoSelect = 0x505,
- kMediaSetActiveSelect = 0x506,
- kMediaSetRateSelect = 0x507,
- kMediaGGetStatusSelect = 0x508,
- kMediaTrackEditedSelect = 0x509,
- kMediaSetMediaTimeScaleSelect = 0x50A,
- kMediaSetMovieTimeScaleSelect = 0x50B,
- kMediaSetGWorldSelect = 0x50C,
- kMediaSetDimensionsSelect = 0x50D,
- kMediaSetClipSelect = 0x50E,
- kMediaSetMatrixSelect = 0x50F,
- kMediaGetTrackOpaqueSelect = 0x510,
- kMediaSetGraphicsModeSelect = 0x511,
- kMediaGetGraphicsModeSelect = 0x512,
- kMediaGSetVolumeSelect = 0x513,
- kMediaSetSoundBalanceSelect = 0x514,
- kMediaGetSoundBalanceSelect = 0x515,
- kMediaGetNextBoundsChangeSelect = 0x516,
- kMediaGetSrcRgnSelect = 0x517,
- kMediaPrerollSelect = 0x518,
- kMediaSampleDescriptionChangedSelect = 0x519,
- kMediaHasCharacteristicSelect = 0x51A,
- kMediaGetOffscreenBufferSizeSelect = 0x51B,
- kMediaSetHintsSelect = 0x51C,
- kMediaGetNameSelect = 0x51D,
- kMediaForceUpdateSelect = 0x51E,
- kMediaGetDrawingRgnSelect = 0x521
- };
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- extern pascal ComponentResult MediaInitialize(ComponentInstance ci, GetMovieCompleteParams *gmc)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x501, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetHandlerCapabilities(ComponentInstance ci, long flags, long flagsMask)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x502, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaIdle(ComponentInstance ci, TimeValue atMediaTime, long flagsIn, long *flagsOut, const TimeRecord *movieTime)
- FIVEWORDINLINE(0x2F3C, 0x10, 0x503, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetMediaInfo(ComponentInstance ci, Handle h)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x504, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaPutMediaInfo(ComponentInstance ci, Handle h)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x505, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetActive(ComponentInstance ci, Boolean enableMedia)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x506, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetRate(ComponentInstance ci, Fixed rate)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x507, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGGetStatus(ComponentInstance ci, ComponentResult *statusErr)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x508, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaTrackEdited(ComponentInstance ci)
- FIVEWORDINLINE(0x2F3C, 0x0, 0x509, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMediaTimeScale(ComponentInstance ci, TimeScale newTimeScale)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50A, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMovieTimeScale(ComponentInstance ci, TimeScale newTimeScale)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50B, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetGWorld(ComponentInstance ci, CGrafPtr aPort, GDHandle aGD)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x50C, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetDimensions(ComponentInstance ci, Fixed width, Fixed height)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x50D, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetClip(ComponentInstance ci, RgnHandle theClip)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50E, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetMatrix(ComponentInstance ci, MatrixRecord *trackMovieMatrix)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x50F, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetTrackOpaque(ComponentInstance ci, Boolean *trackIsOpaque)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x510, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetGraphicsMode(ComponentInstance ci, long mode, RGBColor *opColor)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x511, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetGraphicsMode(ComponentInstance ci, long *mode, RGBColor *opColor)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x512, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGSetVolume(ComponentInstance ci, short volume)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x513, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetSoundBalance(ComponentInstance ci, short balance)
- FIVEWORDINLINE(0x2F3C, 0x2, 0x514, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetSoundBalance(ComponentInstance ci, short *balance)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x515, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetNextBoundsChange(ComponentInstance ci, TimeValue *when)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x516, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetSrcRgn(ComponentInstance ci, RgnHandle rgn, TimeValue atMediaTime)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x517, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaPreroll(ComponentInstance ci, TimeValue time, Fixed rate)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x518, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSampleDescriptionChanged(ComponentInstance ci, long index)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x519, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaHasCharacteristic(ComponentInstance ci, OSType characteristic, Boolean *hasIt)
- FIVEWORDINLINE(0x2F3C, 0x8, 0x51A, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetOffscreenBufferSize(ComponentInstance ci, Rect *bounds, short depth, CTabHandle ctab)
- FIVEWORDINLINE(0x2F3C, 0xA, 0x51B, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaSetHints(ComponentInstance ci, long hints)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x51C, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetName(ComponentInstance ci, Str255 name, long requestedLanguage, long *actualLanguage)
- FIVEWORDINLINE(0x2F3C, 0xC, 0x51D, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaForceUpdate(ComponentInstance ci, long forceUpdateFlags)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x51E, 0x7000, 0xA82A);
- extern pascal ComponentResult MediaGetDrawingRgn(ComponentInstance ci, RgnHandle *partialRgn)
- FIVEWORDINLINE(0x2F3C, 0x4, 0x521, 0x7000, 0xA82A);
- #ifdef __cplusplus
- }
- #endif
-
- #endif
-
-